package	com.mes.dao.jyy;
import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.mes.entity.jyy.Approve;
import com.mes.entity.jyy.DepAndStaff;
/**
 *
 *@ClassName: ApproveService
 *@Description: 
 *@Author jyy
 *@Date 2019-07-22 11:18:08
 *@version 1.0
*/
public interface ApproveMapper {
	/** 
	 * 根据主键id查询实体
	 * @param id 主键id
	 * @return 实体
	*/
	public Approve queryById(Long id);
	/** 
	 * 条件查询所有
	 * @param param 实体条件
	 * @return 实体集合
	*/
	public List<Approve> queryAllByMution(Approve param);
	/** 
	 * 条件分页查询
	 * @param param 实体条件
	 * @return 实体集合
	*/
	public List<Approve> findPageByMution(Approve param);
	/** 
	 * 条件查询记录数
	 * @param param 实体条件
	 * @return 实体集合
	*/
	public Integer selectCountByMution(Approve param);
	/** 
	 * 插入返回id
	 * @param param 实体条件
	 * @return 主键id
	*/
	public Long insert(Approve param);
	/** 
	 * 根据主键更新 返回影响行数
	 * @param param 实体条件
	 * @return 影响行数
	*/
	public Integer update(Approve param);
	/** 
	 * 根据主键拼接的字符串删除返回影响行数
	 * @param ids 主键拼接的字符串
	 * @return 影响行数
	*/
	public Integer delete(String ids);
	
	/**
	 * 查询所有的部门
	 * @return 
	 */
	public List<DepAndStaff> selectAllDep();
	
	/**
	 * 查询所有的员工
	 * @return
	 */
	public List<DepAndStaff> selectAllStaff();
	/** 
	 * 根据审批id对应单据的状态  参照 approval_bil_sqll表
	 * @param id 审批id
	 * @param type 类型
	 * @param state 状态
	 * @return 影响行数
	 */
	public Integer approvalBilSqll(@Param("id")Long id,@Param("type")String type,@Param("state")int state);
}
